草庐IT

c++ - CreateFile 和长设备名

全部标签

windows - 访问设备配置空间-win内核PCI设备

我正在编写获取pci设备的方法,以编程方式给定供应商ID、设备ID(就像Linux内核中的pci_get_device一样)。为此,我需要获取设备对象配置。我从这里读到同样的内容:http://msdn.microsoft.com/en-us/library/windows/hardware/ff558707(v=vs.85).aspx现在为了测试这个,我制作了假驱动程序-服务安装框架,它将安装我的I/O设备驱动程序,在DriverEntry中我可以测试这个PCI功能。但是操作系统因irql_not_less_or_equal而崩溃,在irp=IoBuildSynchronousFsd

c - Visual Studio 2010 中的 Langinfo.h

如何将langinfo.h包含到我的VisualStudio2010C项目中。我试过了#include,但是在VS2010环境下好像没有这个头文件。我需要获取语言环境的开始工作日,但我现在只使用这个库。所以,问题是如何解决我的问题:如何包含langinfo.h,或者如何从工作日开始获取当前语言环境。 最佳答案 我认为,您应该使用GetLocaleInfoEx()函数。例如,要获取一周的开始日期,可以使用这些调用:#ifdefined(_WIN32_WINNT_VISTA)&&WINVER>=_WIN32_WINNT_VISTA&&d

c - Windows 上的 PETSc 安装

我正在尝试在Windows7上安装PETSc库以与VisualStudioExpress2008一起使用,但到目前为止我没有成功。我用python、make、diff安装了cygwin(默认安装)。然后我点击了VS2008Exp->Tools->VSCommandPrompt我去了Petsc目录cygdrive/d/Workspace/PETSc/petsc-2.3.3-p13从那里我试过了anofficialsuggestion首先安装“MicrosoftHPCPack2008R2”和“MicrosoftHPCPack2008R2SDK”但是我有一个错误“无法使用给定的选项进行配置”

C - 运行可执行文件并检索输出

我想做的是创建一个程序,该程序将在运行时使用“--exampleparameter--exampleparameter2”作为cli输入打开examplecliprogram.exe,等待examplecliprogram.exe终止,然后获取输出和用它做一些有用的事情。我希望examplecliprogram.exe在后台运行(而不是在另一个窗口中打开),而examplecliprogram.exe的输出显示在运行开销程序的窗口中。到目前为止,我已经研究过诸如popen()、ShellExecute()和CreateProcess()之类的选项,但我似乎无法使它们中的任何一个正常工作

c - 从c中的文件中读取所有字节

我正在尝试从文件中读取字节,但大小已损坏。调试时我可以看到st.st_size的值,但我无法读取size的值。intmain(void){FILE*oud;structstatst;_off_tsize;unsigned*bytes;charconstpath[]="C:\\Users\\Ruben\\Documents\\test.txt";errno_terror;if((error=fopen_s(&oud,path,"rb"))!=NULL)return-1;stat(path,&st);size=st.st_size;bytes=(unsigned*)malloc(size)

c - SDL+OpenGL 在 linux 下工作但在 windows 下不工作,不是编译器/链接器问题

好吧,关于我一直从事的项目,我遇到了一个非常奇怪的问题。该项目是一个3D引擎(分别使用SDL和openGL进行输入处理和图形处理)。在过去的几个月里,我一直在linux(Ubuntu10.10)中从事这个项目,最近决定将代码移植到Windows7环境中。我选择SDL的主要原因之一是它独立于操作系统处理窗口创建,这意味着从一个操作系统移植到另一个操作系统应该相当简单。我在编译或链接时没有遇到问题,问题是完全相同的代码显然没有理由以两种完全不同的方式运行。首先,一个差异的可视化示例:http://i.stack.imgur.com/RNcCs.jpg它不应该这样看,首先左下角的紫色revt

c - 如何在不知道其名称的情况下获取 JobObject 的句柄?

我的应用程序正在作业中运行。我想使用OpenJobObject获取此Jobobject的句柄,以便稍后使用此句柄。问题是,我不知道作业名称,将NULL传递给作业名称会返回错误87(参数不正确)。我是这样尝试的:HANDLEhandle=OpenJobObject(JOB_OBJECT_QUERY,FALSE,NULL);if(!handle)printf("\nError%d",GetLastError());elseprintf("\nOK");我也在MSDN上找到了这个:应用程序无法获得运行它的作业对象的句柄,除非它具有作业对象的名称。但是,应用程序可以使用NULL调用QueryI

c - Visual-C++ 内联汇编程序编译不正确

最近我向社区询问了两个偏移量的差异Visual-C++inlineassemblerdifferenceoftwooffsets并很快得到回复,非常感谢。现在我遇到了另一个问题,这个问题更糟。我有这样的指令..naked...__asm{...moveax,dwordptr[ebx+offsetdata1]...}真正的问题是它被编译为moveax,[offsetdata1]此行没有编译器警告(/WAll模式),但代码已更改且更改很多-想象一下,它完全被抛出ebx+部分!默默。它是编译器错误还是功能?也许我必须指定一些额外的标志?问题仅在于偏移量,因为moveax,dwordptr[e

c++ - 从设备实例路径字符串中获取设备实例 DWORD

我得到一个像这样的设备实例路径L"\\\\?\\USB#VID_0403&PID_6001#6&2cc2d230&0&2#{219d0508-57a8-4ff5-97a1-bd86587c6c7e}"来自IWDFRemoteInterfaceInitialize::RetrieveSymbolicLink.但是对于CM_Get_Parent我需要让我发疯的设备的DEVINST/DWORD。例如我试过instancePath=L"\\\\?\\USB#VID_0403&PID_6001#6&2cc2d230&0&2#{219d0508-57a8-4ff5-97a1-bd86587c6c7

c - Windows 上的定时器和 sleep

我正在尝试将一些使用nanosleep()和get_clocktime()的linux代码移植到Windows。据我所知,Windows上确实没有那么多性能计时器,并且除了Sleep()之外没有真正的sleep功能。我在Windows上找到了QueryPerformanceCounter和QueryPerformanceFrequency,但我该如何调整它们以使用快速sleep功能。我尝试移植的代码位于这篇StackOverflow帖子中:https://stackoverflow.com/a/13559213/1161270总的来说,我正在尝试将linux代码移植到使用nanosle